Return to doc.sitecore.com

  Configuration file changes in Sitecore CMS 6.5.0 and DMS 2.0.0 rev. 110602 compared to Sitecore CMS 6.4.1 rev. 110324

Configuration file changes in Sitecore CMS 6.5.0 and DMS 2.0.0 rev. 110602 compared to Sitecore CMS 6.4.1 rev. 110324

This update requires you to make changes to the following files:

The clean config files for Sitecore CMS 6.5.0 and DMS 2.0.0 rev. 110602 can be downloaded using the following links:

Changes to the Web.config file

The following changes have been made to the Web.config file of Sitecore CMS 6.5.0 rev. 110602 (Initial release) as compared to the Web.config file of Sitecore CMS 6.4.1 rev. 110324 (6.4.1 Update-1):

  1. Added to the section <pipelines> after the httpRequestBegin pipeline:
    <httpRequestProcessed /> 
  2. Added to the renderItemTile pipeline after the RenderTemplateTile processor:
    <processor type="Sitecore.Pipelines.RenderItemTile.RenderPlaceholderTile, Sitecore.Kernel" /> 
  3. Added to the getPlaceholderRenderings pipeline after the GetPredefinedRenderings processor:
    <processor type="Sitecore.Pipelines.GetPlaceholderRenderings.RemoveNonEditableRenderings, Sitecore.Kernel" />
  4. Added to the getRenderingDatasource pipeline after the GetDatasourceTemplate processor:
    <processor type="Sitecore.Pipelines.GetRenderingDatasource.GetTemplatesForSelection, Sitecore.Kernel" />
  5. Added to the section <pipelines> after the getRenderingDatasource pipeline:
    <!--  Controls actions performed on presentation components in Page Editor -->
    <executePageEditorAction>
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.InsertRendering, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.ReplaceRendering, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.PreviewRendering, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.StopIfSublayout, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.TryGetXslContol, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.TryGetWebControl, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.InitActionHandler, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.ExecutePageEditorAction.GetDefaultControl, Sitecore.Kernel" />
    </executePageEditorAction>
  6. Deleted from the saveRichTextContent pipeline:
    <processor type="Sitecore.Shell.Controls.RichTextEditor.Pipelines.SaveRichTextContent.EmbedInParagraph, Sitecore.Client" />
  7. Added to the section <pipelines> after the saveRichTextContent pipeline:
    <getItemPersonalizationVisibility>
      <processor type="Sitecore.Pipelines.GetItemPersonalizationVisibility.CheckAnalyticsConfiguration, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.GetItemPersonalizationVisibility.CheckUserSettings, Sitecore.Kernel" />
      <processor type="Sitecore.Pipelines.GetItemPersonalizationVisibility.CheckSectionAvailability, Sitecore.Kernel" />
    </getItemPersonalizationVisibility>
    <findVisitorEmailAddress>
      <processor type="Sitecore.Pipelines.GetVisitorEmailAddress.FindVisitorEmailAddress,Sitecore.Kernel" method="FindEmailInUserProfile" />
    </findVisitorEmailAddress>
  8. Deleted from the section <database id="core" singleInstance="true" type="Sitecore.Data.Database, Sitecore.Kernel">:
    <indexes hint="list:AddIndex">
      <index path="indexes/index[@id='system']" />
    </indexes>
  9. Deleted from the section <database id="master" singleInstance="true" type="Sitecore.Data.Database, Sitecore.Kernel">:
    <indexes hint="list:AddIndex">
      <index path="indexes/index[@id='system']" />
    </indexes>
  10. Deleted from the section <sitecore>:
    <indexes>
      <index id="system" singleInstance="true" type="Sitecore.Data.Indexing.Index, Sitecore.Kernel">
        <param desc="name">$(id)</param>
        <fields hint="raw:AddField">
          <field target="created">__created</field>
          <field target="updated">__updated</field>
          <field target="author">__updated by</field>
          <field target="published">__published</field>
          <field target="name">@name</field>
          <field storage="unstored">@name</field>
          <field target="template" storage="keyword">@tid</field>
          <field target="id" storage="unstored">@id</field>
          <type storage="unstored">memo</type>
          <type storage="unstored">text</type>
          <type storage="unstored" stripTags="true">html</type>
          <type storage="unstored" stripTags="true">rich text</type>
          <type storage="unstored" stripTags="true">word document</type>
        </fields>
      </index>
    </indexes>
  11. Added to the section <rights defaultType="Sitecore.Security.AccessControl.AccessRight, Sitecore.Kernel"> after the "workflowCommand:execute" right:
    <add name="profile:customize" comment="The right to input out of range values of profile keys, that belong to this profile." title="Customize Profile Key Values" />
  12. If you are updating to 6.5 from 6.4.1 Update-1 or earlier, the following line in the section <rules> must be changed from:
    <add prefix="field:" ancestor="{3C1715FE-6A13-4FCF-845F-DE308BA9741D}" comment="/sitecore/templates" />
    to:
    <add prefix="field:" ancestor="{3C1715FE-6A13-4FCF-845F-DE308BA9741D}" comment="/sitecore/templates" typeName="Sitecore.Data.Fields.Field" />
  13. Added to the section <rules> at the last position:
    <add prefix="profile:" templateId="{8E0C1738-3591-4C60-8151-54ABCC9807D1}" comment="profile:customize for Profile items only" />
  14. Added to the section <files hint="raw:AddCommand"> after the <remove folder="$(dataFolder)/viewstate" pattern="*.txt" maxAge="2.00:00:00" recursive="true" />:
    <remove folder="$(dataFolder)/Dashboard reports" pattern="*.*" maxAge="2.00:00:00" recursive="true" />
  15. The following comment of the DefaultPublishingTargets setting changed from:
    <!--  PUBLISHING GROUPS
          Pipe separated list of default publishing groups.
          Groups in this list will be preselected in the Publish dialog.
    -->

    to:

    <!--  DEFAULT PUBLISHING TARGETS
          Pipe separated list of default publishing targets.
          Targets in this list will be preselected in the Publish dialog.
    -->
  16. The following comment of the DefaultSQLTimeout setting changed from:
    <!--  SQL timeout
          The default timeout for SQL commands
    -->

    to:

    <!--  DEFAULT SQL TIMEOUT
          The default timeout for all SQL commands issued by the Sitecore APIs, such as
          the SqlServerDataProvider, the OracleDataProvider or the SqlUtil classes.
          Default value: 00:05:00 (5 minutes)
    --> 
  17. Added to the section <settings> after the LogFolder setting (these settings will already be present if you are updating to 6.5 from 6.4.1 Update-2 or later, and should not be added again in this case):
    <!--  LOGIN DISABLE CHANGE PASSWORD
          If true, Sitecore hides the "Change Password" link on the login page and disables the
          /sitecore/login/changepassword.html page.
          Default: false
    -->
    <setting name="Login.DisableChangePassword" value="false" />
    <!--  LOGIN DISABLE PASSWORD RECOVERY
          If true, Sitecore hides the "Forgot Your Password?" link on the login page and disables the
          /sitecore/login/passwordrecovery.html page.
          Default: false
    -->
    <setting name="Login.DisablePasswordRecovery" value="false" />
  18. The Login.SitecoreUrl setting changed from:
    <setting name="Login.SitecoreUrl" value="http://sdn5.sitecore.net/startpage.html" />

    to:

    <setting name="Login.SitecoreUrl" value="http://sdn.sitecore.net/startpage.html" />
  19. Added to the section <settings> after the Upload.UserSelectableDestination setting (this setting will already be present if you are updating to 6.5 from 6.4.1 Update-2 or later, and should not be added again in this case):
    <!--  REDIRECT URL PREFIXES
          Pipe-separated list of URL prefixes to redirect.
          To support IIS authentication, configure redirection for all URLs secured with IIS authentication. Otherwise,
          URLs containing embedded languages in the URL might be able to bypass IIS security, which could result in a
          vulnerability.
          For example, under the default configuration, Sitecore redirects URLs such as "/en/sitecore" to "/sitecore?sc_lang=en"
          to ensure that IIS authentication is enforced for such URLs.
          Default value: /sitecore
    -->
    <setting name="RedirectURLPrefixes" value="/sitecore" />
  20. Added to the section <settings> after the WebEdit.DefaultButtonPath setting:
    <!--  WEBEDIT DISABLE ANIMATIONS
          Disables animation effects in the Page Editor.
          Default value: false
    -->
    <setting name="WebEdit.DisableAnimations" value="false" />
    <!--  WEB EDIT ENABLE JS BUNDLING
          Indicates whether web edit specific JavaScript files should be bundled into one file.
          Default value: true
    -->
    <setting name="WebEdit.EnableJSBundling" value="true" />
    <!--  WEB EDIT BUNDLED JS FILES PATH
          Specifies the path where bundled JavaScript files are stored if WebEdit.EnableJSBundling = true
          Default value: /sitecore/shell/Applications/Page Modes/Ouput/
    -->
    <setting name="WebEdit.BundledJSFilesPath" value="/sitecore/shell/Applications/Page Modes/Ouput/" />
    <!--  WEB EDIT PLACEHOLDERS EDITABLE WITHOUT SETTINGS
          Indicates whether placeholders should be editable in the Page Editor if placeholder settings are not specified.
          Default value: false
    -->
    <setting name="WebEdit.PlaceholdersEditableWithoutSettings" value="false" />
    <!--  WEBEDIT PAGE DAILY VISITS CACHE EXPIRATION
          Sets the absolute expiration on the cached daily visits data in Page Editor.
          Makes sense only when analytics is enabled.
          Default value: 1.00:00:00 (1 day)
    -->
    <setting name="WebEdit.PageDailyVisitsCacheExpiration" value="1.00:00:00" />
    <!--  WEBEDIT TEST STATISTICS CACHE EXPIRATION
          Sets the absolute expiration on the cached test statistics data in Page Editor.
          Makes sense only when analytics is enabled.
          Default value: 01:00:00 (1 hour)
    -->
    <setting name="WebEdit.TestStatisticsCacheExpiration" value="01:00:00" />
  21. Added to the section <settings> after the Preview.DefaultSite setting:
    <!--  EmailValidation
          The regular expression used for e-mail validation
          Default: ^[a-zA-Z0-9_-]+(?:\.[a-zA-Z0-9_-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
    -->
    <setting name="EmailValidation" value="^[a-zA-Z0-9_-]+(?:\.[a-zA-Z0-9_-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$" />
  22. Added to the section <system.webServer><modules> at the last position:
    <add type="Sitecore.Web.HttpModule,Sitecore.Kernel" name="SitecoreHttpModuleExtensions" />
  23. Added to the section <system.webServer><handlers> after the <add verb="*" path="sitecore_feed.ashx" type="Sitecore.Shell.Feeds.FeedRequestHandler, Sitecore.Kernel" name="Sitecore.FeedRequestHandler" />:
    <add verb="*" path="sitecore_handlers.ashx" type="Sitecore.Web.CustomHandlerFactory, Sitecore.Kernel" name="Sitecore.GenericHandler" />
  24. Added to the section <system.web><httpModules> at the last position:
    <add type="Sitecore.Resources.Media.MediaRequestSessionModule, Sitecore.Kernel" name="MediaRequestSessionModule" />
    <add type="Sitecore.Web.HttpModule,Sitecore.Kernel" name="SitecoreHttpModuleExtensions" />
  25. Added to the section <system.web><httpHandlers> after the <add verb="*" path="sitecore_feed.ashx" type="Sitecore.Shell.Feeds.FeedRequestHandler, Sitecore.Kernel" />:
    <add verb="*" path="sitecore_handlers.ashx" type="Sitecore.Web.CustomHandlerFactory, Sitecore.Kernel" />
  26. The following line in the section <system.web> changed from:
    <trace enabled="false" requestLimit="50" pageOutput="false" traceMode="SortByTime" localOnly="true" />
     
    to:

    <trace enabled="true" requestLimit="50" pageOutput="false" traceMode="SortByTime" localOnly="true" />

Changes to the Commands.config file

The following changes have been made to the Commands.config file of Sitecore CMS 6.5.0 rev. 110602 (Initial release) as compared to the Commands.config file of Sitecore CMS 6.4.1 rev. 110324 (6.4.1 Update-1):

  1. Added after the "item:workflow" command:
    <command name="item:personalize" type="Sitecore.Shell.Applications.WebEdit.Commands.PersonalizeItem,Sitecore.Client" />
    <command name="item:personalizeprofile" type="Sitecore.Shell.Framework.Commands.SetProfileValue,Sitecore.Kernel" />
  2. Added after the "webedit:editrenderingproperties" command:
    <command name="webedit:editvariations" type="Sitecore.Shell.Applications.WebEdit.Commands.EditVariations,Sitecore.Client"/>
  3. Added after the "webedit:otherviews" command:
    <command name="webedit:personalize" type="Sitecore.Shell.Applications.WebEdit.Commands.Personalize,Sitecore.Client"/>
  4. Added after the "webedit:previousday" command:
    <command name="webedit:componentoptions" type="Sitecore.Shell.Applications.WebEdit.Commands.ComponentOptions,Sitecore.Client"/>
  5. Added after the "webedit:setdevice" command:
    <command name="webedit:setpagevariation" type="Sitecore.Shell.Applications.WebEdit.Commands.Testing.SetPageVariation,Sitecore.Client"/>
  6. Added after the "webedit:setlanguage" command:
    <command name="webedit:starttest" type="Sitecore.Shell.Applications.WebEdit.Commands.Testing.StartTest,Sitecore.Client"/>
  7. Added after the "webedit:stopdebug" command:
    <command name="webedit:stoptest" type="Sitecore.Shell.Applications.WebEdit.Commands.Testing.StopTest,Sitecore.Client"/>
  8. Added after the "webedit:toggleinformation" command:
    <command name="webedit:togglecontrolbar" type="Sitecore.Shell.Applications.WebEdit.Commands.ToggleControlBar,Sitecore.Client"/>

Changes to the Sitecore.Analytics.config file

Notice: This file does not exist and does not need to be upgraded if you have not installed Sitecore Analytics. 

Tip: Most customers have only applied a small number of changes (if any) to the Sitecore.Analytics.config file. In that case, we strongly recommend that you simply download the clean config file using the link above and re-apply any changes that you've made to save time and to reduce the risk of making mistakes when adding the new settings, pipelines, etc. to the file.

The following changes have been made to the Sitecore.Analytics.config file of Sitecore DMS 2.0.0 rev. 110602 (Initial release) as compared to the Sitecore.Analytics.config file of OMS 1.1.1 rev. 110324 (corresponding to CMS 6.4.1 Update-1):

  1. Added to the section <settings> after the Analytics.AutoDetectBots setting:
    <!--  ANALYTICS BULK COPY BATCH SIZE
          Defines the number of rows to batch in a bulk copy.
          Default: 1000
    -->
    <setting name="Analytics.BulkCopyBatchSize" value="1000" />
  2. Added to the section <settings> after the Analytics.CampaignQueryStringKey setting:
    <!--  ANALYTICS DISABLE DATABASE
          Disables the database so that no reading or writing to the database occurs.
          Default: false
    -->
    <setting name="Analytics.DisableDatabase" value="false" />
  3. Added to the section <settings> after the Analytics.EventQueryStringKey setting:
    <!--  ANALYTICS GEOIPS CACHESIZE
          Determines the number of cached items in the Geo IP lookup manager.
          Default: 1000
    -->
    <setting name="Analytics.GeoIps.CacheSize" value="1000" />
  4. Added to the section <settings> after the Analytics.LongRunningRequest setting:
    <!--  ANALYTICS MAX CACHED ROWS
          For each of the definition tables: Browser, IpAddress, IpOwner, Keyword, OperatingSystem,
          ReferringSite and Screen a number of rows are kept in memory. This setting specifies
          how many per table. When exceeded, half of the rows are discarded.
          Default: 4000
    -->
    <setting name="Analytics.MaxCachedRows" value="4000" />
  5. The following setting and its comment changed from:
    <!--  ANALYTICS MAX QUEUE SIZE
          Defines the max number of requests in the insert queue. Additional request are dropped.
          Default: 500
    -->
    <setting name="Analytics.MaxQueueSize" value="500" />
    to:
    <!--  ANALYTICS MAX QUEUE SIZE
          Defines the max number of data rows in the insert queue. Additional request are dropped.
          Default: 10000
    -->
    <setting name="Analytics.MaxQueueSize" value="10000" />
  6. The following setting and its comment changed from:
    <!--  ANALYTICS PERFORM LOOKUP INTERVAL
          Specifies the interval (milliseconds) which the DNS lookup task
          runs.
          Default: 1000
    -->
    <setting name="Analytics.PerformLookup.Interval" value="1000" />
    to:
    <!--  ANALYTICS PERFORM LOOKUP INTERVAL
          Specifies the interval (milliseconds) which the DNS lookup task
          runs.
          Default: 60000
    -->
    <setting name="Analytics.PerformLookup.Interval" value="60000" />
  7. Deleted from the section <settings>:
    <!--  ANALYTICS PERFORM LOOKUP MACHINENAME
          Specifies the name of the server that performs lookup.
          If specified, only the server with this name performs lookup.
          This value is compared agaist System.Environment.MachineName.
          Default: <none>
    -->
    <setting name="Analytics.PerformLookup.MachineName" value="" />

    <!--  ANALYTICS REPORTS TIMEOUT
          The default timeout for SQL commands used in Analytics reports
          Default: 00:05:00 (5 minutes)
    -->
    <setting name="Analytics.Reports.Timeout" value="00:05:00"/>
  8. Added to the section <settings> after the Analytics.PerformLookup.Interval setting:
    <!-- ANALYTICS PERFORM LOOKUP VISIT UPDATE DELAY
         Specifies the delay (timespan) after last request in the visit before
         the background worker will populate the geoip information in the visit
         if it is missing.
         Default: 00:01:00
    -->
    <setting name="Analytics.PerformLookup.VisitUpdateDelay" value="00:01:00" />
  9. Added to the section <settings> after the Analytics.ReverseDnsLookupTimeout setting:
    <!--  ANALYTICS ROBOTS IGNORE ROBOTS
          Ignore robots - robots will not be written to the database.
          Default: true
    -->
    <setting name="Analytics.Robots.IgnoreRobots" value="true" />

    <!--  ANALYTICS ROBOTS IGNORE AUTO ROBOTS
          Ignore requests detected as auto robots.
          Default: true
    -->
    <setting name="Analytics.Robots.IgnoreAutoRobots" value="true" />

    <!--  ANALYTICS ROBOTS SESSION TIMEOUT
          The ASP.NET Session Timeout for auto detected robots.
          When a session is detected as an Auto Robot, the ASP.NET
          Session Timeout is set to this value (in minutes).
          Default: 1
    -->
    <setting name="Analytics.Robots.SessionTimeout" value="1" />
  10. Added to the section <settings> after the Analytics.Sampling.Percentage setting:
    <!--  ANALYTICS TRACKERCHANGES FLUSH INTERVAL
          Defines the interval in milliseconds between tracker changes queue flushes.
          Default: "10000" (10 seconds)
    -->
    <setting name="Analytics.TrackerChanges.FlushInterval" value="10000" />

    <!--  ANALYTICS TRACKERCHANGES MAX ROWS
          Defines the max number of rows in the tracker changes queue before the queue is flushed.
          This should not be more than 10000 or performance will suffer.
          Default: 1000
    -->
    <setting name="Analytics.TrackerChanges.MaxRows" value="1000" />

    <!--  ANALYTICS TRACKERCHANGES SLEEP
          Defines the tracker changes queue inactive period.
          Default: "100" (0.1 seconds).
    -->
    <setting name="Analytics.TrackerChanges.Sleep" value="100" />

    <!--  ANALYTICS UPDATE BATCH SIZE
          Defines the number of SQL request to batch.
          Default: 1000
    -->
    <setting name="Analytics.UpdateBatchSize" value="1000" />

    <!--  ANALYTICS USE BULK COPY
          Determines if inserted rows should be inserted using Bulk Copy.
          Default: true
    -->
    <setting name="Analytics.UseBulkCopy" value="true" />

    <!--  ANALYTICS AUTOMATION BATCH SIZE
          Defines the number of records to process in a batch.
          Default: 1000
    -->
    <setting name="Analytics.Automation.BatchSize" value="1000" />

    <!--  ANALYTICS AUTOMATION INTERVAL
          Defines how often the workflow worker runs.
          Default: "10000" (10 seconds).
    -->
    <setting name="Analytics.Automation.Interval" value="10000" />

    <!--  ANALYTICS AUTOMATION MACHINE NAME
          Defines the machine that workflows run on.
          Default: <none>
    -->
    <setting name="Analytics.Automation.MachineName" value="" />

    <!--  ANALYTICS AUTOMATION THREADS
          Defines the number of threads used by the workflow engine.
          Default: 1
    -->
    <setting name="Analytics.Automation.Threads" value="1" />
  11. Deleted from the section <sitecore>:
    <!--
      Analytics provider for Microsoft SQL Server:
        <add name="default" type="Sitecore.Analytics.Data.DataProviders.AnalyticsProviderSqlServer, Sitecore.Analytics"/>

      Analytics provider for Oracle:
        <add name="default" type="Sitecore.Analytics.Data.DataProviders.AnalyticsProviderOracle, Sitecore.Oracle"/>
    -->
    <analyticsManager defaultProvider="default">
      <providers>
        <clear/>
        <add name="default" type="Sitecore.Analytics.Data.DataProviders.AnalyticsProviderSqlServer, Sitecore.Analytics"/>
      </providers>
    </analyticsManager>
  12. Added to the section <sitecore> after the section <settings>:
    <!--
    Analytics provider for Microsoft SQL Server:
    <add name="default" type="Sitecore.Analytics.Data.DataAccess.DataAdapters.Sql.SqlServer.SqlServerDataAdapterProvider, Sitecore.Analytics"/>

    Analytics provider for Oracle:
    <add name="default" type="Sitecore.Data.Oracle.Analytics.OracleDataAdapterProvider, Sitecore.Oracle"/>
    -->
    <dataAdapterManager defaultProvider="default">
      <providers>
        <clear/>
        <add name="default" type="Sitecore.Analytics.Data.DataAccess.DataAdapters.Sql.SqlServer.SqlServerDataAdapterProvider, Sitecore.Analytics"/>
      </providers>
    </dataAdapterManager>
  13. Added to the section <sitecore> after the section <lookupManager>:
    <visitorCacheManager defaultProvider="default">
      <providers>
        <clear/>
        <add name="default" type="Sitecore.Analytics.Data.DataAccess.VisitorCache.SessionVisitorCacheProvider, Sitecore.Analytics"/>
      </providers>
    </visitorCacheManager>

    <reportManager defaultProvider="default">
      <providers>
        <clear/>
        <add name="default" type="Sitecore.Analytics.Reports.Data.Sql.SqlServer.SqlServerReportProvider, Sitecore.Analytics"/>
      </providers>
    </reportManager>

    <automationManager defaultProvider="default">
      <providers>
        <clear/>
        <add name="default" type="Sitecore.Analytics.Automation.Data.Sql.SqlServer.SqlServerAutomationProvider, Sitecore.Automation.MarketingAutomation"/>
      </providers>
    </automationManager>
  14. The following events deleted from the section <events>:
    <event name="item:copied">
      <handler type="Sitecore.Analytics.Data.Items.ItemEventHandler, Sitecore.Analytics" method="OnItemCopied"/>
    </event>
    <event name="item:copied:remote">
      <handler type="Sitecore.Analytics.Data.Items.ItemEventHandler, Sitecore.Analytics" method="OnItemCopied"/>
    </event>
    <event name="item:saved:remote">
      <handler type="Sitecore.Analytics.Data.Items.ItemEventHandler, Sitecore.Analytics" method="OnItemSaved"/>
    </event>
    <event name="item:deleted:remote">
      <handler type="Sitecore.Analytics.Data.Items.ItemEventHandler, Sitecore.Analytics" method="OnItemDeleted"/>
    </event>
  15. Added to the section <events><event name="item:saved"> at the last position:
    <handler type="Sitecore.Analytics.Automation.Data.Items.ItemEventHandler, Sitecore.Automation.MarketingAutomation" method="OnAutomationStateChanged"/>
  16. Changed in the section <events> from:
    <event name="item:deleted">
      <handler type="Sitecore.Analytics.Data.Items.ItemEventHandler, Sitecore.Analytics" method="OnItemDeleted"/>
    </event>
    to:
    <event name="item:deleted">
      <handler type="Sitecore.Analytics.Automation.Data.Items.ItemEventHandler, Sitecore.Automation.MarketingAutomation" method="OnAutomationStateChanged"/>
    </event>
  17. Added to the section <pipelines> at the first position:
    <automation>
      <processor type="Sitecore.Analytics.Pipelines.Automation.GetAutomationStateItem,Sitecore.Automation.MarketingAutomation" />
      <processor type="Sitecore.Analytics.Pipelines.Automation.ProcessCommands,Sitecore.Automation.MarketingAutomation" />
      <processor type="Sitecore.Analytics.Pipelines.Automation.SetNextWakeUpTime,Sitecore.Automation.MarketingAutomation" />
      <processor type="Sitecore.Analytics.Pipelines.Automation.LastAccessedDateTime,Sitecore.Automation.MarketingAutomation" />
    </automation>

    <initialize>
      <processor type="Sitecore.Analytics.Pipelines.Loader.InitializeAnalytics,Sitecore.Analytics" />
      <processor type="Sitecore.Analytics.Pipelines.Loader.InitializeAutomation,Sitecore.Automation.MarketingAutomation" />
    </initialize>
  18. Added to the section <pipelines><httpRequestBegin> at the last position:
    <processor type="Sitecore.Analytics.Pipelines.HttpRequest.PageLevelTestItemResolver,Sitecore.Analytics" patch:after="processor[@type='Sitecore.Pipelines.HttpRequest.ItemResolver, Sitecore.Kernel']" />
  19. Added to the section <pipelines> after the httpRequestBegin pipeline:
    <httpRequestProcessed>
      <processor type="Sitecore.Analytics.Pipelines.HttpRequest.EndAnalytics,Sitecore.Analytics"/>
    </httpRequestProcessed>

    <sessionEnd>
      <processor type="Sitecore.Analytics.Pipelines.SessionEnd.RunRules,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.SessionEnd.RunAutomation,Sitecore.Automation.MarketingAutomation"/>
      <processor type="Sitecore.Analytics.Pipelines.SessionEnd.AcceptChanges,Sitecore.Analytics"/>
    </sessionEnd>
  20. Added to the section <pipelines><startTracking> at the first position:
    <processor type="Sitecore.Analytics.Pipelines.StartTracking.InitializeTracker,Sitecore.Analytics" />
  21. Added to the section <pipeline> after the startTracking pipeline:
    <deployDefinition>
      <processor type="Sitecore.Analytics.Pipelines.DeployDefinition.SavePageEvent,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.DeployDefinition.SaveEngagementPlan,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.DeployDefinition.SaveCampaign,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.DeployDefinition.SaveTestDefinition,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.DeployDefinition.SaveTrafficType,Sitecore.Analytics"/>
    </deployDefinition>
  22. Added to the section <pipelines> after the evaluateConditionals pipeline:
    <executePageEditorAction>
      <processor type="Sitecore.Analytics.Pipelines.ExecutePageEditorAction.ActivateCondition, Sitecore.Analytics" patch:after="processor[@type='Sitecore.Pipelines.ExecutePageEditorAction.PreviewRendering, Sitecore.Kernel']"/>
      <processor type="Sitecore.Analytics.Pipelines.ExecutePageEditorAction.ActivateTestVariation,Sitecore.Analytics" patch:after="processor[@type='Sitecore.Pipelines.ExecutePageEditorAction.PreviewRendering, Sitecore.Kernel']" />
    </executePageEditorAction>

    <initializeTracker>
      <processor type="Sitecore.Analytics.Pipelines.InitializeTracker.Initialize,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.InitializeTracker.Robots,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.InitializeTracker.RunRules,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.InitializeTracker.RunAutomation,Sitecore.Automation.MarketingAutomation"/>
    </initializeTracker>

    <insertRenderings>
      <processor type="Sitecore.Analytics.Pipelines.InsertRenderings.Testing,Sitecore.Analytics" patch:before="processor[@type='Sitecore.Pipelines.InsertRenderings.Processors.EvaluateConditions, Sitecore.Kernel']"/>
      <processor type="Sitecore.Analytics.Pipelines.InsertRenderings.PageEditorTesting,Sitecore.Analytics" patch:before="processor[@type='Sitecore.Pipelines.InsertRenderings.Processors.EvaluateConditions, Sitecore.Kernel']"/>
      <processor type="Sitecore.Analytics.Pipelines.InsertRenderings.Personalization,Sitecore.Analytics" patch:after="processor[@type='Sitecore.Pipelines.InsertRenderings.Processors.EvaluateConditions, Sitecore.Kernel']"/>
    </insertRenderings>

    <acceptChanges>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.DoNotWrite,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.Robots,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.GeneratingCampaignEvents,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.DropCancelledPage,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.AcceptSharedChanges,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.AcceptChanges.AcceptVisitorChanges,Sitecore.Analytics"/>
    </acceptChanges> 
  23. The following section <pipelines><parseReferrer> changed from:
    <parseReferrer>
      <processor type="Sitecore.Analytics.Pipelines.ParseReferrer.ParseGoogle,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.ParseReferrer.ParseLiveSearch,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.ParseReferrer.ParseYahoo,Sitecore.Analytics"/>
    </parseReferrer>
    to:
    <parseReferrer>
      <processor type="Sitecore.Analytics.Pipelines.ParseReferrer.ParseGenericSearchEngine,Sitecore.Analytics">
        <engines hint="raw:AddHostParameterName">
          <engine hostname="www.google" parametername="q"/>
          <engine hostname="search.yahoo" parametername="p"/>
          <engine hostname="www.bing" parametername="q"/>
          <engine hostname="search.lycos" parametername="query"/>
          <engine hostname="www.baidu" parametername="wd"/>
        </engines>
      </processor>
    </parseReferrer>
  24. The following pipelines deleted from the section <pipelines>:
    <httpRequestEnd>
      <processor type="Sitecore.Analytics.Pipelines.HttpRequest.EndAnalytics,Sitecore.Analytics" patch:before="processor[@type='Sitecore.Pipelines.HttpRequest.StopMeasurements, Sitecore.Kernel']" />
    </httpRequestEnd>

    <renderingCondition>
      <processor type="Sitecore.Analytics.Pipelines.RenderingConditions.EvaluateProfileKeys,Sitecore.Analytics"/>
    </renderingCondition>

    <createAnalyticsSession>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.InitializeSession,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetIpAddress,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetScreen,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetOperatingSystem,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetReferringSite,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetKeywords,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetBrowser,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateSession.GetGlobalSession,Sitecore.Analytics"/>
    </createAnalyticsSession>

    <submitAnalytics>
      <processor type="Sitecore.Analytics.Pipelines.Submit.SubmitSession,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.Submit.SubmitGlobalSessionTags,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.Submit.SubmitPages,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.Submit.SubmitProfiles,Sitecore.Analytics"/>
    </submitAnalytics>

    <submitAnalyticsTests>
      <processor type="Sitecore.Analytics.Pipelines.SubmitTests.SubmitTestVariables,Sitecore.Analytics"/>
    </submitAnalyticsTests>

    <submitAnalyticsPage>
      <processor type="Sitecore.Analytics.Pipelines.SubmitPage.SubmitPageEvents,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.SubmitPage.SubmitCampaignEvents,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.SubmitPage.SubmitTestVariables,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.SubmitPage.SubmitCampaignTestVariables,Sitecore.Analytics"/>
    </submitAnalyticsPage>

    <excludeRobots>
      <processor type="Sitecore.Analytics.Pipelines.ExcludeRobots.CheckUserAgent, Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.ExcludeRobots.CheckIpAddress, Sitecore.Analytics"/>
    </excludeRobots> 
  25. Added to the section <pipelines> after the renderLayout pipeline:
    <getChromeData>
      <processor type="Sitecore.Analytics.Pipelines.GetChromeData.GetRenderingTestVariations, Sitecore.Analytics" patch:after="processor[@type='Sitecore.Pipelines.GetChromeData.GetRenderingChromeData, Sitecore.Kernel']" />
    </getChromeData>
  26. Added to the section <pipelines><getContentEditorWarnings> at the last position:
    <processor type="Sitecore.Analytics.Pipelines.GetContentEditorWarnings.IsEngagementPlanDeployed, Sitecore.Analytics"  patch:after="processor[@type='Sitecore.Pipelines.GetContentEditorWarnings.HasNoFields, Sitecore.Kernel']"/>
  27. Added to the section <pipelines> after the getContentEditorWarnings pipeline:
    <trafficTypes>
      <processor type="Sitecore.Analytics.Pipelines.TrafficTypes.Initialize,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.TrafficTypes.ReferringSite,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.TrafficTypes.SearchKeywords,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.TrafficTypes.OrganicBranded,Sitecore.Analytics"/>
    </trafficTypes>

    <createVisit>
      <processor type="Sitecore.Analytics.Pipelines.CreateVisits.UpdateGeoIpData,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateVisits.ParseReferrer,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.CreateVisits.SetTrafficType,Sitecore.Analytics"/>
    </createVisit>

    <registerPageEvent>
      <processor type="Sitecore.Analytics.Pipelines.RegisterPageEvent.RunPageEventRules,Sitecore.Analytics"/>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.RegisterPageEvent.RunAutomation,Sitecore.Automation.MarketingAutomation"/>
    </registerPageEvent>

    <triggerCampaign>
      <processor type="Sitecore.Analytics.Pipelines.TriggerCampaign.ProcessTrackingField,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.TriggerCampaign.HandleTrafficType,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.TriggerCampaign.RunRules,Sitecore.Analytics"/>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.TriggerCampaign.RunAutomation,Sitecore.Automation.MarketingAutomation"/>
      <processor type="Sitecore.Analytics.Pipelines.TriggerCampaign.RegisterPageEvent,Sitecore.Analytics"/>
    </triggerCampaign>

    <processEmailMessage>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.PrepareEmail.ProcessEmailMessage, Sitecore.Automation.MarketingAutomation" method="AddHostToItemLink"/>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.PrepareEmail.ProcessEmailMessage, Sitecore.Automation.MarketingAutomation" method="AddHostToMediaItem"/>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.PrepareEmail.ProcessEmailMessage, Sitecore.Automation.MarketingAutomation" method="SendEmail"/>
    </processEmailMessage>

    <findVisitorEmailAddress>
      <processor type="Sitecore.Analytics.Pipelines.GetVisitorEmailAddress.FindVisitorEmailAddress, Sitecore.Analytics" method="FindEmailInUserName" patch:before="processor[@type='Sitecore.Pipelines.GetVisitorEmailAddress.FindVisitorEmailAddress, Sitecore.Kernel']"/>
      <processor type="Sitecore.Analytics.Pipelines.GetVisitorEmailAddress.FindVisitorEmailAddress, Sitecore.Analytics" method="FindEmailInTags" patch:after="processor[@type='Sitecore.Pipelines.GetVisitorEmailAddress.FindVisitorEmailAddress, Sitecore.Kernel']"/>
    </findVisitorEmailAddress>

    <loadVisitor>
      <processor type="Sitecore.Analytics.Pipelines.LoadVisitor.OptimizeLoadOptions,Sitecore.Analytics"/>
      <processor type="Sitecore.Analytics.Pipelines.LoadVisitor.LoadAnalytics,Sitecore.Analytics"/>
      <processor type="Sitecore.Automation.MarketingAutomation.Pipelines.LoadVisitor.LoadAutomations,Sitecore.Automation.MarketingAutomation"/>
    </loadVisitor>

    <commitDataSet>
      <processor type="Sitecore.Analytics.Pipelines.CommitDataSet.CommitAnalytics,Sitecore.Analytics"/>
    </commitDataSet> 
  28. Added to the section <sitecore> after the section <pipelines>:
    <customHandlers>
      <handler trigger="/~/analytics/reports" type="Sitecore.Analytics.Reports.ReportDataHandler, Sitecore.Analytics" />
    </customHandlers>